{
  // 空对象
  let person: {} = {};

  // 有属性的对象
  let person4: { name: string } = {
    name: "同学",
  };

  // 既有属性又有方法的对象
  // 在一行代码中指定对象的多个属性类型时，使用 `;`（分号）来分隔
  let person3: { name: string; sayHi(): void } = {
    name: "jack",
    sayHi() {},
  };

  // 对象中如果有多个类型，可以换行写：
  // 通过换行来分隔多个属性类型，可以去掉 `;`
  let person2: {
    name: string;
    sayHi(): void;
  } = {
    name: "jack",
    sayHi() {},
  };

  // 练习
  // 指定学生的类型
  // 姓名
  // 性别
  // 成绩
  // 身高

  // 学习
  // 打游戏
  let stu: {
    name: string;
    gender: string;
    score: number;
    height: number;
  } = {
    name: "小明",
    gender: "男",
    score: 100,
    height: 183,
  };
  console.log(stu);
}
